Skip to content

Fix gripper hang after tool-changer swap#15

Open
Joseph Borodach (JosephBorodach) wants to merge 17 commits into
mainfrom
fix/gripper-reactivate-after-tool-swap
Open

Fix gripper hang after tool-changer swap#15
Joseph Borodach (JosephBorodach) wants to merge 17 commits into
mainfrom
fix/gripper-reactivate-after-tool-swap

Conversation

@JosephBorodach

@JosephBorodach Joseph Borodach (JosephBorodach) commented Jul 15, 2026

Copy link
Copy Markdown

Problem

After a tool-changer swap, the gripper hung and timed out on every command until the module was restarted

Why in hung
After a tool-changer swap the gripper resets to STA 0, but a bare ACT 1 is a no-op, so it never re-activated and hung on every command

Another issue is calibration could store a bad limit (POS ?) and send SET POS ?, which the URCap ignores --> read blocks until timeout.

Solution
reactivate forces ACT 0 --> 1 and waits for STA 3

Manual Testing

Manually tested using the tool changer on hardware

Comment thread robotiq/gripper.go
// Don't fail construction if no gripper is coupled yet: a tool changer may
// attach one later and call activate. Avoids construction-retry churn.
if err := g.activate(ctx); err != nil {
logger.CWarnf(ctx, "robotiq: initial activation failed "+

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should probably make this config dependent. I don't think "if the machine cannot connect to the gripper don't worry about it" is a good default. If someone misconfigures a gripper it should fail loudly. If someone intentionally configures a gripper which may not be connected it should be allowed but it should be explicit

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants